Sensor fusion and model calibration for bit attitude prediction

ABSTRACT

Techniques for estimating a current inclination and azimuth of a drill bit of a wellbore drilling system are described. The estimates for the current inclination and azimuth are generated using measurements obtained for one or more parameters associated with the drilling process performed by the drill bit and taken over a range of the wellbore falling within a sliding window having a predefined distance D extending along the wellbore.

TECHNICAL FIELD

The present disclosure relates to drilling subterranean wellbores. Inparticular, the present disclosure relates to estimating and modelingone or more parameters associated with a drilling system for drillingwellbores in geological formations.

BACKGROUND

Drilling for hydrocarbons, such as oil and gas, typically involvesoperation of a drilling tool at underground depths that can reach downto thousands of feet below the surface. Such remote distances of thedownhole drilling tool, combined with unpredictable downhole operatingconditions and vibrational drilling disturbances, creates numerouschallenges in accurately steering the drilling tool to reach a settarget. Sensors, located at or near a bottom hole assembly (BHA), detectvarious conditions related to the drilling, such as orientation of thedrilling tool, characteristics of the rock formation, pressure,temperature, acoustics, and/or radiation. Such sensor measurement datais typically transmitted to the surface, where human operators analyzeit to steer the downhole drilling tool to reach a set target.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments of the disclosure may be better understood by referencingthe accompanying drawings.

FIG. 1 illustrates a schematic view of a wellbore operating environmentin which a drilling control apparatus, method, and system may bedeployed in accordance with embodiments of the present disclosure.

FIG. 2A illustrates a schematic diagram of a portion of an example drillstring assembly positioned in a borehole.

FIG. 2B illustrates a schematic diagram of a portion of another exampledrill string assembly positioned in a borehole.

FIG. 3 illustrates a flow diagram of a method used to determine drillbit inclination and azimuth according to various embodiments of thedisclosure.

FIG. 4 illustrates a block diagram of an example computing system thatmay be employed to practice the concepts, methods, and techniquesdisclosed herein, and variations thereof.

FIG. 5 illustrates a flowchart of an example method according to variousembodiments of the disclosure.

The drawings are provided for the purpose of illustrating exampleembodiments. The scope of the claims and of the disclosure are notnecessarily limited to the systems, apparatus, methods, or techniques,or any arrangements thereof, as illustrated in these figures.

DETAILED DESCRIPTION

The description that follows includes example systems, methods,techniques, and program flows that symbolize embodiments of thedisclosure. However, it is understood that this disclosure may bepracticed without these specific details. In some instances, well-knowninstruction requests, protocols, structures and techniques have not beenshown in detail in order not to obfuscate the description.

For autonomous drill-bit-steering controls to accurately track areference wellbore plan, the autonomous drilling system needs accurateestimates of the current bit inclination, azimuth, and position as wellas accurate estimates of parameter values in the predictive models thatthe autonomous drilling system uses to plan its next control movements.Various embodiments allow for the accurate estimation of bit inclinationand azimuth and of the model parameters required for the prediction offuture values of bit inclination and azimuth. Additionally, suchoperations can be performed automatically as drilling progresses.

Estimates of current drill bit inclination and azimuth and estimates ofparameters within predictive models can be produced by a moving horizonweighted least square regression algorithm using available measurementdata over a specified data window. This window can be specified in termsof distance D, and can stretch from the current bit measured depthbackwards D units. Different types of measurements available from sensorpackages along the bottom-hole assembly (BHA) can be combined by use ofmeasurement weights in order to produce the most accurate estimates.

In some embodiments, the simplification of the estimation problem to aleast square form and the use of a moving window are chosen to reducecomputational load so the calculations can be performed by a downholeprocessor while drilling is in process. The use of measurement weightsallows the incorporation of many types of sensor types within theestimation procedure. The weights also determine how much eachmeasurement influences the final parameter estimates.

In computer-aided directional drilling, the goal can be to drillaccording to a predefined well plan that gives a specified wellboreinclination and azimuth at each measured depth. The available controlhandles for these quantities can include weight-on-bit, steering force(bit deflection for point-the-bit rotary steerable systems(RSS)—steering ratio, or a proxy for the steering force, which appliesmore specifically to push-the-bit RSS), and tool-face angle. Theselatter two quantities can be controlled by actuators on the BHA.

According to some embodiments, operations include determination of thecurrent bit azimuth and inclination as well as the model parameters thatallow for future prediction of bit azimuth and inclination for a givenset of control inputs. The model parameter determination can be referredto as parameter estimation or system identification. The determinationof current bit azimuth and inclination can be referred to as stateestimation. Using measurement weights, the effect of each measurement onthe estimates can be tuned according to its measurement type and itsdistance from the current bit position. For example, more accuratemeasurement types closer to the bit can be more heavily weighted thanmeasurements taken further away or using a less accurate sensor type.

FIG. 1 illustrates a schematic view of a wellbore operating environment10 in which a drilling control apparatus, method, and system may bedeployed in accordance with embodiments of the present disclosure. Thewellbore operating environment 10 includes a plurality of drillingsubsystems. For example, FIG. 1 depicts the wellbore operatingenvironment 10 as including a bottom hole assembly (BHA) subsystem 25,drilling fluid subsystem 50, and a rig subsystem 75. However, thewellbore operating environment 10 may include any number of subsystemsso long as there is a plurality of subsystems. Additionally, each of thesubsystems illustrated in FIG. 1 may be further divided into additionalsubsystems or may themselves be included in other subsystems withoutdeparting from the scope and spirit of the present disclosure.

As depicted in FIG. 1, the wellbore operating environment 10 may includea drilling rig 12 disposed atop a borehole 14. The drilling rig 12includes a drill string 20 disposed within the borehole 14. A BHAsubsystem 25 is located at the downhole end of the drill string 20. TheBHA subsystem 25 includes a drill bit 22 that carves a borehole 14through the formations 24. The BHA subsystem 25 further includes afluid-driven motor assembly 70 that drives drill bit 22. The BHAsubsystem 25 may provide directional control of the drill bit 22. In atleast one aspect of the present disclosure, the drill bit 22 is arotatable drill bit and the BHA subsystem 25 is a steerable drilling BHAsubsystem that includes a Measurement While Drilling (MWD) system withthe sensors 18 to provide information about formations 24 and downholedrilling parameters. The MWD sensors in the BHA subsystem 25 mayinclude, but are not limited to, a device for measuring the formationresistivity near the drill bit, a gamma ray device for measuring theformation gamma ray intensity, devices for determining the attitude ofthe drill bit, and pressure sensors for measuring drilling fluidpressure downhole.

The MWD sensors may also include additional/alternative sensing devicesfor measuring shock, vibration, torque, of for telemetry, etc. The BHAsubsystem 25 may further include actuators capable of steering the drillbit 22 or otherwise adjusting the path direction of the drill bit 22 anddrill string 20. In at least one aspect of the present disclosure, theBHA subsystem 25 includes a subsystem controller capable of processingdata obtained from sensors 18 to adjust the path direction of the drillbit 22 and drill string 20 by sending command signals to one or moreactuators capable of adjusting or controlling the path direction. Thesensors 18 may transmit data to a surface control unit 100 on theearth's surface using telemetry such as conventional mud pulse telemetrysystems or any wired, fiber optic, or wireless communication system. Thesurface control unit 100 may process or further communicate the sensordata in accordance with the embodiments of the present disclosure asdescribed herein.

In at least one aspect of the present disclosure, the BHA subsystem 25may include a Logging While Drilling (LWD) System with additionalsensors or logging tools 16. The logging tools 16, sensors, orinstruments, can be any conventional logging instrument such as acoustic(sometimes referred to as sonic), neutron, gamma ray, density,photoelectron, nuclear magnetic resonance, or any other conventionallogging instrument, or combinations thereof, which can be used tomeasure lithology or porosity of formations surrounding an earthborehole. The sensors or logging tools 16 may transmit data to a surfacecontrol unit 100 on the earth's surface using telemetry such asconventional mud pulse telemetry systems or any wired, fiber optic, orwireless communication system. The surface control unit 100 may processor further communicate the sensor data in accordance with theembodiments of the present disclosure as described herein. Surfacecontrol unit 100 may also be communicatively coupled to a network 110,such as the internet, a local area network (LAN), a wide area network(WAN), or another type of communications network that allows surfacecontrol unit 100 to communicate with other networked devices.

The BHA subsystem 25 may additionally include sensors in conjunctionwith the fluid-driven motor assembly 70 that monitors the revolutionsper minute (RPM) of the fluid-driven motor assembly 70 and thatidentifies changes in torque or power needed by the motor to maintainconstant rotation, such as a torque meter. Such sensors may be internalor external to the fluid-driven motor assembly 70.

In addition to MWD and LWD sensors and instrumentation, wirelineinstrumentation may also be used in conjunction with the BHA subsystem25. The wireline instrumentation may include any conventional logginginstrumentation which can be used to measure the lithology and/orporosity of formations surrounding an earth borehole, for example, suchas acoustic, neutron, gamma ray, density, photoelectric, nuclearmagnetic resonance, or any other conventional logging instrument, orcombinations thereof, which can be used to measure lithology.

As depicted in FIG. 1, a drilling fluid subsystem 50 pumps drilling mud26 from a mud storage pit 28 near the well head 30, down an axialpassageway (not illustrated) through the drill string 20, through thefluid-driven motor assembly 70, and out of apertures in the drill bit22. After exiting the apertures in the drill bit 22, the drilling mud 26flows back to the surface through the annular region 32 between thedrill string 20 and the sidewalls 36 of the borehole 14. Metal casing 34may be positioned in the borehole 14 above the drill bit 22 formaintaining the integrity of an upper portion of the borehole 14 and forpreventing fluid transmission between borehole 14 and formations 24. Theannular region 32 between the drill string 20 and the sidewalls 36 ofthe borehole 14 forms the return flow path for the drilling mud 26.

The drilling fluid subsystem 50 causes drilling mud 26 to be pumped fromthe mud storage pit 28 near the well head 30 by one or more pumps 38.The drilling fluid subsystem 50 may include one or more sensors capableof measuring the pumping rate or the downhole drilling fluid flow rate.The drilling fluid subsystem 50 may further include one or moreactuators capable of adjusting or controlling the pumps 38, includingthe pumping rate or the downhole drilling fluid flow rate. The drillingmud may travel through a mud supply line 40 which is coupled with acentral passageway extending throughout the length of the drill string20 and exits into the borehole through apertures in the drill bit 22 forcooling and lubricating the drill bit and carrying the formationcuttings produced during the drilling operation back to the surface. Thecuttings and mud mixture are passed through a fluid exhaust conduit 42,coupled with the annular region 32 at the well head 30, and into atrough system 45 that includes shakers and an optional centrifuge (notshown). The shakers separate a majority of solids, such as cuttings andfines, from the drilling mud. Cleaned mud is then returned to the mudstorage pit 28.

The drilling fluid subsystem 50 may include sensors capable of analyzingthe nature as well as the volume, quantity, or weight of the cuttingsand fines being removed by the shaker included in the trough system 45.Additionally, the drilling fluid subsystem 50 may include sensorscapable of determining the particle size distribution (PSD) of thecuttings, the density of the cuttings, and/or visual characteristics ofthe cuttings. For example, the drilling fluid subsystem 50 may includesensors capable of determining that the cuttings are not beingefficiently cleaned out of the hole, which could in turn cause the drillbit 22 or drill string 20 to get stuck downhole.

Numerous other problems and corrective actions may be similarlyidentified based on particular surrounding circumstances andmeasurements made by the drilling fluid subsystem 50 sensors. Forexample, a greater than expected amount of fluid could indicate aninefficiency of the shakers that could be corrected by variousadjustments, such as changes to the screen desk angle, vibration,G-force and cuttings conveyance velocity. The drilling fluid subsystem50 may include actuators capable of adjusting or controlling theperformance of the shakers or optional centrifuges. For example, thedrilling fluid subsystem 50 may include actuators capable of adjustingor controlling shaker parameters such as screen desk angle, vibration,and G-force.

The drilling fluid subsystem 50 may further include one or more sensorscapable of determining the fluid properties of the drilling fluid. Inconjunction with drilling fluid property sensors, the drilling fluidsubsystem 50 may also include one or more mixers 35 capable ofcontrolling the drilling fluid properties by mixing mud obtained fromthe mud storage pit with appropriate additives. For example, the mixers35 of the drilling fluid subsystem 50 may control the rheologicalproperties of the drilling fluid as well as the density, mud equivalentcirculating density (ECD), electrical stability, percent solids,oil/water ratio, acidity (pH), salinity, and particle size distribution.The drilling fluid subsystem 50 may include one or more actuatorscapable of controlling the properties of the drilling fluid. Forexample, actuators included in the drilling fluid subsystem 50 maycontrol additive supply valves, feed rates, mixture composition,discharge rates, and other aspects of the mixing process.

As used herein, the term “drilling mud” may be used interchangeably with“drilling fluid” to refer to both drilling mud alone and a mixture ofdrilling mud and formation cuttings, or alternatively, to refer to bothdrilling fluid alone and a mixture of drilling fluid and formationcuttings.

The wellbore operating environment 10 may further include a rigsubsystem 75. The rig subsystem 75 may include a top drive motor 72, adraw-works 73, a rotary table 76, and a rotary table motor 74. Therotary table motor 74 may rotate the drill string, or alternatively thedrill string may be rotated via a top drive motor 72. The rig subsystem75 at least in part drives the drill bit 22 of the BHA subsystem 25 byproviding sufficient weight-on-bit (WOB), revolutions per minute (RPM)and torque to create the hole. The rig subsystem 75 may include one ormore sensors capable of measuring, for instance, revolutions per minute(RPM), weight-on-bit (WOB), torque-on-bit (TOB), rate of penetration(ROP), well depth, hook load, and/or standpipe pressure. Additionally,the rig subsystem 75 includes actuators capable of adjusting orcontrolling drilling parameters such as RPM, WOB, TOB, and ROP. Forexample, the hook load and top drive rotational speed may be changedover time by one or more actuators.

In the wellbore operating environment 10 each subsystem may include asubsystem controller that is communicatively coupled with at least onesubsystem sensor and at least one subsystem actuator. The subsystemcontroller is capable of receiving measurement data collected bysubsystem sensors and determining a local subsystem state frommeasurements received from the subsystem sensors. As used herein, the“local subsystem state” refers to a time-dependent subsystem state orset of subsystem states that may be directly measured by a sensor orcalculated or estimated, at least in part, from one or more sensormeasurements.

The subsystem controller is also capable of sending command signals tosubsystem actuators to cause the actuators to adjust or control one ormore drilling control parameters. Actuators can convert the commandsignals from control systems into actions such as movement of a controlvalve shaft or the change of speed of a pump. Command signals toactuators can at least be electrical, pneumatic, hydraulic, acoustic, orelectromagnetic radiation, or various combinations thereof. Actuatorscan at least be of various kinds, including variable speed motors,variable speed drives, pneumatic actuators, electrical actuators,hydraulic actuators, rotary actuators, servo motor actuators, or variouscombinations thereof. In some cases, the subsystem controller may sendcommand signals to a lower level controller capable of causing actuationof an actuator to adjust or modify a drilling control parameter inaccordance with the command signal sent by the subsystem controller. Thelower level controllers may be relatively simple controllers such as aproportional-integral-derivative (PID) type controller and/or a controlloop feedback mechanism controller.

The subsystem controller may include any suitable computer, controller,or data processing apparatus capable of being programmed to carry outthe method and apparatus as further described herein. An example of sucha subsystem controller is illustrated in and further described belowwith respect to FIG. 4.

FIG. 2A illustrates a schematic diagram 200 of a portion of an exampledrill string assembly 206 positioned in a borehole 207. Borehole 207 hasa vertical orientation formed by sidewalls 201. Drill string assembly206 includes pipe 205 coupled to bottom hole assembly 204 at a first endof pipe 205. Pipe 205 extends upward within borehole 207 to physicallycouple to additional equipment such as additional pipes, draw-works, anda rotary table in a manner as illustrated and described above withrespect to drill string 20 of the wellbore operating environment 10 andFIG. 1.

As shown in FIG. 2A, bottom hole assembly 204 includes sensors 211,actuators 212, and drill bit 210. Sensors 211 are not limited to anyparticular number and/or types of sensors, and may include any number ofsensors and/or any type of sensors that may be used to take measurementsand/or determine one or more parameters related to the drill stringassembly 206 and/or borehole 207. Sensors 211 may be communicativelycoupled to processing devices, (not shown in FIG. 2A, but for examplesurface control unit 100 as shown in FIG. 1), and provide data, in someexamples in real-time, to the one or more processing devices. The datamay include values for sensed measurements that were measured by thesensors 211 and that are related to one or more parameters associatedwith the drill string assembly 206 and/or borehole 207. Actuators 212are not limited to any particular type of actuator devices, and mayinclude electrical, pneumatic, or hydraulic devices, or any combinationthereof. Actuators 212 in some examples are configured to rotate drillbit 210 in a rotary motion around an axis of the drill bit. Actuators212 in some examples include actuator devices configured to control andposition the inclination of the face of the drill bit 210 relative to anaxis of the bottom hole assembly 204. By controlling the inclination ofthe face of drill bit 210, actuators 212 may be able to steer thedrilling direction of the drill bit 210 as the drill bit proceeds todrill further into and extend the borehole 207 in a direction generallyindicated by arrow 240.

As further shown in FIG. 2A, borehole 207 extends in a substantiallyvertical orientation along longitudinal axis 208 through a formation202. An inclination of the drill bit 210 is generally indicated bydashed line 220 and may be generally perpendicular to longitudinal axis208. Dashed line 220 may be understood to be an edge of a planeextending to the right and left of longitudinal axis 208, and alsoextending perpendicularly in all directions in a 360-degree radiusaround longitudinal axis 208. In various examples, actuators 212 areconfigured to manipulate the inclination of drill bit 210 so that theplane represented by dashed line 220 is no longer perpendicular tolongitudinal axis 208 in all radial directions surrounding thelongitudinal axis. For example, actuators 212 may manipulate drill bit210 so that the inclination for drill bit 210 slopes upward toward theright-hand side of FIG. 2A along dashed line 221 and at an angle alpha(α) relative to the longitudinal axis 208.

In another example, actuators 212 may manipulate drill bit 210 so thatthe inclination of the drill bit slopes downward toward the right-handside of FIG. 2A along dashed line 222 and at an angle beta (β) relativeto longitudinal axis 208. Estimates related to the current azimuth ofdrill bit 210 are also important in relation to determining the currentinclination relative to the rotational position 230 of the drill bit 210around the longitudinal axis 208. In some examples, the rotationalposition 230 is measured in terms of the rotational position of thedrill string assembly 206 relative to a fixed position 229. In someexamples the fixed position is a geographical orientation, such as truenorth.

The variations used to control the inclination of drill bit 210 may thenbe used to steer the direction of the further boring of the borehole 207as the drill bit is rotated and allowed to progress further into theformation 202 past the bottom of the existing borehole (generallyindicated at 209). Control of the inclination of the drill bit 210, inconjunction with other drilling parameters such as bit weight, drillingfluid parameters, and rotational speed of the drill bit, are importantin maintaining the direction of the borehole 207 along a planned pathfor the borehole. As shown in FIG. 2A, drill bit 210 is positioned at ornear the bottom end (indicated by 209) of borehole 207. The planned pathfor the extension of borehole 207 is indicated by arrow 240 havingsidewalls 223 extending through formation 202. In order to proceed alongthe desired path, control over the inclination of drill bit 210 isrequired.

Estimates of the current drill bit inclination and azimuth are importantfor making further decisions related to controlling the inclination ofthe drill bit in order to maintain the drilling operation along theplanned path. Further, estimates of the drill bit inclination andazimuth may be used in conjunction with the predictive model or modelsas described herein used to generate control input information forcontrolling the actuators 212 and thus the inclination of drill bit 210as the drilling process proceeds in order to best maintain the actualpath of the borehole 207 along the desired planned path. In someexample, even when the desired planed path continues along a verticalorientation as shown in FIG. 2A, control and adjustments to theinclination of drill bit 210 may be required due to factors such asmaterial changes in the formation 202 being contacted by the drill bitand flexure in the drill string itself, among other factors.

Sensors 211 may make any number of repetitive measurements related toparameters of the drill string assembly 206, the formation 202, and/orthe borehole 207 as drilling of the borehole progresses. In someexamples, any measurements taken by sensors 211 or other sensorsmonitoring the operation of the drill string assembly 206 that weretaken within a sliding window along the longitudinal axis 208 ofborehole 207 may be applied to one or more predictive models to providean estimate of the current inclination and azimuth of drill bit 210. Asshown in FIG. 2A, in some examples the sliding window extends from aposition d* (at line 231), representing the current position of the faceof the drill bit 210, and extending backward (upward direction in FIG.2A) along the longitudinal axis 208 to a predefined distance D,represented by arrow 232, to the top of the sliding window 234 at line233. Distance D is not limited to any particular distance, and may befor example one or more inches, or for example one or more feet. Thenumber of measurements taken by sensors 211 for any given measurement ormeasured parameter taken over distance D is not limited to anyparticular number of measurements, and may represent a few, such as twoor three measurements, or thousands of measurements taken over thedistance D.

As further described below, each of the measurements taken while thedrill bit 210 operated within the range of the borehole specified by thesliding window 234 may be individually weighted. For example, measurethat were taken closer to the current position of the drill bit 210(closer to line 231) may be given a heavier weighting value, while thesesame type measurements that were taken further upward within the slidingwindow (closer to line 233) may be given progressively smaller weightingvalues as the distance from line 231 where the measurement was takenbecome closer to the top of the sliding window. In some examples, thetype of sensor and/or the accuracy of the sensor used for sensing themeasurements may be used to determine the weighting applied tomeasurements taken over the window D by that particular sensor. In someexamples, measurements taken by a more accurate or by a particular typesensor may be given heavier weighting than a same or similar type ofmeasurement taken by a less accurate sensor.

Using the weighted measurements taken over the sliding window 234 forthe current drill bit position, parameters for a predictive model ormodels are estimated using an optimization algorithm, in some examplesusing but not limited to a least square regression algorithm. Theestimated parameters are then provided to the predictive model or modelsin order to generate the estimates for the current drill bit inclinationand azimuth. These estimates may then be used as a basis for controllingactuators 212 to manipulate the inclination of drill bit 210 in order tomaintain the extending boring of borehole 207 in conformance with thedesired borehole path. In some examples, the parameters may be estimatedas often as a new measurement or set of measurements is received. Inother examples, the estimate of the parameters and the inclination andazimuth of the drill bit may be performed when the current position ofdrill bit 210 has advanced some predefined distance along thelongitudinal axis 208 from the position where the drill bit was when thelast set of parameters was estimated. In other examples, the estimate ofthe parameters and the inclination and azimuth of the drill bit may beperformed on some predetermined and regular time interval. In someexamples, one or more of these techniques may be used alone or incombination to determine when the estimate of the parameters and theinclination and azimuth of the drill bit may be performed. For example,estimates may be generated at some regular time interval as long as thedrill bit depth has changed (increased) in a forward direction someminimum amount.

The set of measurements included in any iteration of estimating themodel parameters, inclination, and azimuth may be taken from a set ofmeasurements made within the sliding window 234 having distance D,wherein the sliding window also slides forward while maintainingdistance D within the sliding window in connection with the advancementof the drill bit 210 as the drill bit extends borehole 207 further intothe formation 202 along the drill path. Use of the estimated drill bitinclination and azimuth may include use of these estimates to maintainthe drill path of the borehole in a generally vertical direction asshown in FIG. 2A. However, the use of these estimated drill bitinclinations and azimuths using the techniques described herein is notlimited to drilling vertical boreholes, and may be used to aid thedrilling of non-vertical sections of a borehole, as further illustratedfor example in FIG. 2B.

FIG. 2B illustrates a schematic diagram 250 of a portion of anotherexample drill string assembly 206 positioned in a borehole 257 formed bysidewalls 251. Duplicate reference number in FIG. 2B correspond to asame or a similar object or device having the same reference number usedin FIG. 2A. In FIG. 2B, a drill string assembly 206 including bottomhole assembly 204 and drill bit 210 are illustrated. Bottom holeassembly 204 includes sensors 211 and actuators 212 that may be the sameor similar devices and/or configurations to perform the same or similarfunctions and provide the same or similar features as these devices weredescribed above with respect to FIG. 2A.

FIG. 2B differs from FIG. 2A in that the path of borehole 257 depictedin FIG. 2B is vertical for a first portion of the borehole, but beginsto bend away from the vertical orientation in area 263, and continues ona curved path to the right in FIG. 2B along longitudinal axis 258 of theborehole. The drill bit 210 is positioned at or near the currentlocation of the current bottom 259 of borehole 257. Sliding window 234extends backward from the current position of the drill bit, indicatedas d* at line 231 to a distance D, to the top of sliding window 234 atline 233. The path for the well plan for borehole 257 extending past thecurrent bottom 259 of the borehole is indicated by dashed lines 260.

An estimate of the current position of drill bit 210 at line 231 may bebased on obtaining a value for the true depth of drill bit 210, forexample the distance taken by the path of longitudinal axis 258 from adashed line 270 to a fix point along longitudinal axis 258, such as thesurface elevation level of formation 202 (not shown in FIG. 2B). Asfurther shown in FIG. 2B, borehole 257 extends in a curved path to theright in FIG. 2B through formation 202. An inclination of the drill bit210 is generally indicated by dashed line 270 and may be generallyperpendicular to longitudinal axis 258, wherein longitudinal axis 258has an angle of orientation at the current location of drill bit 210that is non-vertical for example relative to a gravitational vectorrepresented by arrow 253. Dashed line 270 may be understood to be anedge of a plane extending to the right and left of longitudinal axis258, and also extending perpendicularly in all directions in a360-degree radius around longitudinal axis 258.

In various examples, actuators 212 are configured to manipulate theinclination of drill bit 210 so that the plane represented by dashedline 270 is no longer perpendicular to longitudinal axis 258 in allradial directions surrounding the longitudinal axis. For example,actuators 212 may manipulate drill bit 210 so that the inclination fordrill bit 210 slopes upward toward the right-hand side of FIG. 2A alongdashed line 271 and at an angle alpha (α) relative to the longitudinalaxis 258. In another example, actuators 212 may manipulate drill bit 210so that the inclination of the drill bit slopes less upward toward theright-hand side of FIG. 2B along dashed line 272 and at an angle beta(β) relative to longitudinal axis 258.

Using measurements taken by sensors 211 or other devices while drill bit210 was positioned along longitudinal axis 258 and drilling within theportion of longitudinal axis 258 included within the defined by slidingwindow 234, weightings to these measurements may be applied, estimatesfor model parameters generated and applied to least squared optimizationalgorithms to provide an estimate of the current drill bit inclinationand azimuth using any of the techniques described above with respect toFIG. 2A, or otherwise described herein. These estimates of the currentdrill bit inclination and azimuth may then be used to generate furthercontrol inputs for actuators 212 for the purpose of controlling theinclination of the drill bit 210 to allow further drilling of borehole257 along the desired well path defined by dashed lines 260 in thedirection indicated by arrow 261.

FIG. 3 illustrates a flow diagram 300 of a method used to determinedrill bit inclination and azimuth according to various embodiments.Inputs to diagram 300 are indicated by bracket 301. Inputs may includedata indicating bit deflection (BD) of the system being modeled or to bemodeled by the method of the flow diagram 300. The term bit deflectionmay be used to refer to steering actuation amount. The term bitdeflection may also refer to as steering force, steering ratio, slideratio, pad force, etc., depending on the steering actuation system usedin the drilling tool. Inputs may also include tool face (TF) or anyother drilling parameters such as weight-on-bit, rotation speed (RPM),or flow rate. A drilling process is performed at block 302. The drillingprocess includes advancing the drill bit further through a geologicalformation, in most cases along a pre-planned drill path.

As the drilling process is occurring, one or more sets of measurementsare made, for example by sensors of a wellbore system, as represented byblock 304. The types of measurements made, and the types of sensor usedto make the measurements, are not limited to any particular type ofmeasurements or to any particular types of sensors making thesemeasurements. Measurements may be made by one or more sensor packageslocated along the drill string and/or as part of thebottom-hole-assembly (BHA). The measurements may include a set ofmeasurements taken during the time when the drill bit is positionedwithin a predefined sliding window. The sliding window has apredetermined value for a distance D, wherein distance D represents alinear distance from the current position of the face of the drill bitand extending backward the distance D along a longitudinal axis of theborehole already formed by the drilling process. The window is a slidingwindow because as the face of the drill bit moves forward as part of thedrilling process, the sliding window is also moved forward so that theleading edge of the window is defined to be at the current position ofthe face of the drill bit, and having the sliding window extendingbackward that same predefined distance D from the current position ofthe drill bit. As such, the distance D included within the slidingwindow remains at a same linear distance value, wherein the portion ofthe borehole defined to be within the sliding window itself moves alongthe borehole path as the drill bit progresses forward along the drillpath.

As various times all of the measurements taken from within a givensliding window are further processed at block 306. The time when a setof measurements included within a given sliding window are processed isnot limited to a particular time interval or to a particular triggerevent. In some examples, the processing at block 306 occurs each time anew set of measurements is captured at block 304. In other examples, theprocessing at block 306 may occur at some predefined time interval, suchas every second, or multiple times per second, or a time interval longerthan one second. The processing of the measurements at block 306 mayinclude a data quality check on the measured values received as themeasurements. For example, the measured values included in themeasurements may be checked against an expected range of values for aparticular measurement to assure that the actual measurement value(s)falls within the expected range, and thus include a reasonable value orset of values for that particular measurement.

The measurements at block 306 are also assigned a weighting factor. Forexample, each particular type of measurement, e.g., each surveymeasurement taken within the sliding window, may be weighted based onits relative position within the sliding window. In some examples, thesurvey measurements that were taken closer to the current position ofthe drill bit within the sliding window are given a heavier weightingthan survey measurements taken at a position within the sliding windowthat are further away from the current position of the drill bit. Theentire set of survey measurements taken within the sliding window may beprogressively weighted based on their relative positions within thesliding window where the measurements where respectively taken. In asimilar manner, the additional sets of any types of measurements, suchas the measurements associated with various surveying packages, may beweighted based on their relative positions within the sliding windowwhere these measurements were taken, for example relative to theposition where the respective measurements were taken relative to thecurrent position of the drill bit.

In some examples, the weighting of the measurement data is based on themeasurement type. For example, more accurate measurement types may bemore heavily weighted than a less accurate type of measurement for asame or similar measured parameter and/or for measurements taken at asame position within the sliding window. In some examples, the weightingof a measurement or measurements at block 306 may include a weightingfactor determined based both on the distance from the current drill bitposition within the sliding window where the measurement was taken andthe type of measurement, for example the accuracy or the measurementparameter being measured that the measurement data represents.

Once the processing at block 306 has been completed, the weightedmeasurements are applied to an algorithm at block 308. Block 308 in someexamples also receives filtered input for identification, U_(filtered),from block 310. In some embodiments, filtering inputs includes averagingthe inputs over a finite distance. In some embodiments, filtering inputsincludes synchronizing the sampling rate with the sensor measurementsampling rate for one or more sensors so that these sampling rates aresynchronized before being forward on for use by block 308.

In some examples, the algorithm at block 308 is a parameteridentification algorithm configured to generate a set of modelparameters generally indicated by bracket 309. In some examples, theparameter identification algorithm includes a least square parameteridentification algorithm. In some examples, block 308 includesconstrained parameters. The model parameters may include parametersdescribing the curvature-generation capability of the BHA in a wellborein inclination and azimuth planes (maximum rate of change ofinclination—build rate—and maximum rate of change of azimuth—walkrate—over a distance). Multiple parameters could be used to define this,such as one parameter, (Kact), that represents the contribution of thesteering actuation applied by BHA to create the generated curvature; andanother parameter (Kbias) that represents the contribution of externaleffects on the generated curvature, such as formation forces andgravity.

The model parameters generated at block 308 are applied to a predictivemodel at block 312. Output from the predictive model at block 312 isconfigured to generate outputs 315 including an estimate of the currentdrill bit inclination and current drill bit azimuth. The outputs 315 maybe applied to a controller at block 320. The controller at block 320generates outputs 321 used to control the positioning and inclination ofthe drill bit for further inputs to the drilling process being performedat block 302. In addition, output 313 may be provided by the predictivemodel at block 312 to be used in modeling the drill bit projectionrelative to a drill plan for the desired path of the borehole goingforward.

In the case of inclination, the problem is to predict, bit inclinationθ, and build rate K_(θ) (drop rate if negative) for a given sequence ofcontrol inputs u. The simple dynamic prediction model is given in statespace form by Equation (1):

$\begin{matrix}{\begin{bmatrix}{\overset{.}{K}}_{\theta} \\\overset{.}{\theta}\end{bmatrix} = {{\begin{bmatrix}\frac{- 1}{\tau} & 0 \\1 & 0\end{bmatrix}\begin{bmatrix}K_{\theta} \\\theta\end{bmatrix}} + {\begin{bmatrix}\frac{1}{\tau} & 1 \\0 & 0\end{bmatrix}\begin{bmatrix}{K_{inc}u} \\K_{bias}\end{bmatrix}}}} & (1)\end{matrix}$wherein τ is the inclination time constant, Kinc is the input gain,Kbias is the Kθ bias, and [{dot over ( )}] represents a derivative withrespect to measured depth. Kinc and Kbias are the parameters to beestimated as the drilling progresses based on measurements of θ (e.g.,at block 308 in FIG. 3). These parameters can be estimated as often as anew measurement is received. Based on these parameter estimates, theprediction model can then be used to predict future inclinations andbuild rates (e.g., block 312 in FIG. 3).

Examples of the methods described herein utilize the sliding window,which incorporates the drill bit's current measured depth, denoted d*,and extends backwards a predefined distance D along the measured depth.As described above, the available sensor measurements along the segmentof distance D are extracted for model calibration. To create a series ofmodel outputs for this sliding window, embodiments of the method use thediscretized form of the state-space prediction model. First define:

$A = e^{{\lbrack\begin{matrix}\frac{- 1}{\tau} & 0 \\1 & 0\end{matrix}\rbrack}\;\delta}$$B = {\int_{0}^{\delta}{e^{{\lbrack\begin{matrix}\frac{- 1}{\tau} & 0 \\1 & 0\end{matrix}\rbrack}\; w}{dw}}}$ $C = \begin{bmatrix}0 & 1\end{bmatrix}$wherein A represents the state or system matrix, B represents the inputmatrix, and δ is the discretization step in distance units. Then, thediscretized form of the prediction model equation becomes Equation (2):

$\begin{matrix}{\begin{bmatrix}K_{\theta} \\\theta\end{bmatrix}_{d + \delta} = {{A\begin{bmatrix}K_{\theta} \\\theta\end{bmatrix}}_{d} + {{B\begin{bmatrix}{K_{inc}u_{d}} \\K_{bias}\end{bmatrix}}.}}} & (2)\end{matrix}$

As noted above, the parameter δ is the discretization step in distanceunits, which will be assumed 1 for the remainder. For a given initialcondition

$\begin{bmatrix} \\\hat{\theta}\end{bmatrix}_{d^{*} - D}$and model parameters {circumflex over (K)}_(inc) and {circumflex over(K)}_(bias:), the estimates of θ over the window are obtained fromEquation (3) as follows:

$\begin{matrix}{\begin{bmatrix}{\hat{\theta}}_{d^{*} - D + 1} \\{\overset{\_}{\theta}}_{d^{*} - D + 2} \\\vdots \\{\hat{\theta}}_{d^{*}}\end{bmatrix} = {{\begin{bmatrix}{CA} \\{CA}^{2} \\\vdots \\{CA}^{D}\end{bmatrix}\begin{bmatrix} \\\hat{\theta}\end{bmatrix}}_{d^{*{- D}}} + {\quad{\begin{bmatrix}C & 0 & 0 & 0 \\{CA}^{1} & C & 0 & 0 \\\vdots & \vdots & \ddots & \vdots \\{CA}^{D - 1} & {CA}^{D - 2} & \ldots & C\end{bmatrix}\left( {{{\frac{1}{\tau}\begin{bmatrix}u_{d^{*} - D} \\u_{d^{*} - D + 1} \\\vdots \\u_{d^{*} - 1}\end{bmatrix}}{\hat{K}}_{inc}} + {\begin{bmatrix}1 \\1 \\\vdots \\1\end{bmatrix}{\hat{K}}_{bias}}} \right)}}}} & (3)\end{matrix}$Equation (3) may be simplified to the form of Equation (4) as follows:

$\begin{matrix}{\hat{\theta} = {{{\overset{\_}{CA}\begin{bmatrix} \\\hat{\theta}\end{bmatrix}}_{d^{*} - D} + {U_{{filt},d}{\hat{K}}_{inc}} + {D_{{filt},d}{\hat{K}}_{bias}}} = {{\begin{bmatrix}\overset{\_}{CA} & U_{{filt},d} & D_{{filt},d}\end{bmatrix}\begin{bmatrix}\begin{bmatrix} \\\hat{\theta}\end{bmatrix}_{d^{*} - D} \\{\hat{K}}_{inc} \\{\hat{K}}_{bias}\end{bmatrix}} = {X\;\hat{K}}}}} & (4)\end{matrix}$

Actuations of control input u are denoted u_(d) where d is the measureddepth of the bit at the time that u_(d) occurred. Along the well path,measurements of θ are denoted θ_(d) ^(x) where x denotes the sensornumber and d is the measured depth that measurement θ_(d) ^(x)corresponds to. Each sensor measurement has a weighting factor denotedw_(d) ^(x), where x denotes the sensor number and d is the measureddepth that measurement w_(d) ^(x), corresponds to.

The weights determine how much each response value influences the finalparameter estimates. In various examples, a high-quality data pointinfluences the fit more than a low-quality data point. In some examples,each sensor measurement type may have its weighting factor adjusted tobe inversely proportional to the accuracy of the sensor. The accuracymay be evaluated by performing a statistical comparison against surveydata or may be based on historical experience. Within the measurementsfrom the same sensor, the measurement may be weighted differently also,with more recent measurements more highly weighted for example.

Once the measurement data and predictions are extracted along backwarddistance D from the bit, model parameter estimation is proposed to besolved using weighted least squares regression, which minimizes theweighted error summations using Equation (5) as follows:S=Σ _(x)Σ_(d) w _(d) ^(x)(θ_(d) ^(x)−{circumflex over (θ)}_(d))²  (5)

In some examples, all of the measurements are compiled into columnvector θ^(meas) and the corresponding diagonal matrix W has its diagonalto be the vector of all weights assembled in the same order as θ^(meas).Each measurement θ_(d) ^(x) has an associated measured depth d, andthese are compiled in column vector d^(meas). Each column of the matrixX=[CA U_(filt,d) D_(filt,d)] can be interpolated according to themeasurement locations contained in d^(meas) and recompiled into a matrixX′, and {circumflex over (Θ)}′=X′{circumflex over (K)} can be defined asthe predictions associated with the measurements in θ^(meas). Then, theweighted least square parameter estimation is equivalent to minimizingEquation (6) as follows:S′=(θ^(meas)−{circumflex over (Θ)})^(T) W(θ^(meas)−{circumflex over(Θ)})  (6)

The solution of weighted least square parameter estimation is shown byEquation (7) as follows:

$\begin{matrix}{\hat{K} = {\begin{bmatrix}{\hat{K}}_{\theta,{d^{*} - D}} \\{\hat{\theta}}_{d^{*} - D} \\{\hat{K}}_{inc} \\{\hat{K}}_{bias}\end{bmatrix} = {\left( {X^{\prime\; T}{WX}^{\prime}} \right)^{- 1}X^{\prime\; T}W\;\theta^{meas}}}} & (7)\end{matrix}$

After the parameter vector {circumflex over (K)} has been estimated, itcan be used to predict current state estimates {circumflex over(θ)}_(d*) and {circumflex over (K)}_(θ,d*) which are simply the finalelements of {circumflex over (Θ)}=X{circumflex over (K)}. The updatedmodel can also be used to generate future predictions, for example bysimply propagating forward from the initial condition using Equation 2.

In some examples, the parameter estimates {circumflex over (K)}_(inc)and {circumflex over (K)}_(bias) might be constrained to a physicallyrealizable or other user-defined range. In that case, the objective inEquation (6) and constraints shown as Equation (8) as follows:{circumflex over (K)} _(inc,min) ≤{circumflex over (K)} _(inc)≤{circumflex over (K)} _(inc,max){circumflex over (K)} _(bias,min) ≤{circumflex over (K)} _(bias)≤{circumflex over (K)} _(bias,max)  (8)

These constraints together form a quadratic program type of optimizationproblem. The trade-off for adding constraints on the parameter estimatesmay include increased computational burden compared to the simple linearprojection of Equation (7).

In comparison to other methods for estimating the drill bit inclinationand azimuth, the methods and techniques described in this disclosure arenot recursive, since the results at any time do not depend on theresults previously obtained. This is in contrast for example torecursive Kalman Filter based methods, which may require highercomputational load to perform the estimation of the drill bitinclination and azimuth. Use of the methods and techniques describedhere may lead to lower computational loads. Further, the original KalmanFilter is restricted to pure state estimation using linear models socannot be used for parameter estimation. The nonlinear Extended KalmanFilter (EKF) can be modified for simultaneous state and parameterestimation, but has been found to be unstable. Also, the Kalman Filtermethods require an estimate of the initial state, which leads to anadditional optimization problem needing to be solved, eliminating thisadvantage over the current methods and techniques described herein.Compared to at least the Kalman Filter based methods, the methods andtechniques described in this disclosure are simple in form and shouldhave no numerical stability issues.

FIG. 4 illustrates a block diagram of an example computing system 400that may be employed to practice the concepts, methods, and techniquesdisclosed herein, and variations thereof. The computing system 400incudes a plurality of components of the system that are in electricalcommunication with each other, in some examples using a bus 403. Thecomputing system 400 may include any suitable computer, controller, ordata processing apparatus capable of being programmed to carry out themethod and apparatus as further described herein.

The computing system, which may be a general-purpose computer, includesa processor 401 (possibly including multiple processors, multiple cores,multiple nodes, and/or implementing multi-threading, etc.). The computerincludes memory 407. The memory 407 may be system memory (e.g., one ormore of cache, SRAM, DRAM, zero capacitor RAM, Twin Transistor RAM,eDRAM, EDO RAM, DDR RAM, EEPROM, NRAM, RRAM, SONOS, PRAM, etc.) or anyone or more of the possible realizations of machine-readable media. Thecomputer system also includes the bus 403 (e.g., PCI, ISA, PCI-Express,HyperTransport® bus, InfiniBand® bus, NuBus, etc.) and a networkinterface 405 (e.g., a Fiber Channel interface, an Ethernet interface,an internet small computer system interface, SONET interface, wirelessinterface, etc.).

The computer may also include an image processor 411 and a controller415. The controller 415 can control the different operations that canoccur in the response inputs from sensors 419 and/or calculations basedon inputs from sensors 419 using any of the techniques described herein,and any equivalents thereof, to generate outputs to steering controls421. For example, the controller 415 can communicate instructions to theappropriate equipment, devices, etc. to alter control the inclination ofthe drill bit performing a drilling operation being monitored by thesensors 419. Any one of the previously described functionalities may bepartially (or entirely) implemented in hardware and/or on the processor401. For example, the functionality may be implemented with anapplication specific integrated circuit, in logic implemented in theprocessor 401, in a co-processor on a peripheral device or card, etc.Further, realizations may include fewer or additional components notillustrated in FIG. 4 (e.g., video cards, audio cards, additionalnetwork interfaces, peripheral devices, etc.). As illustrated in FIG. 4,the processor 401 and the network interface 405 are coupled to the bus403. Although illustrated as also being coupled to the bus 403, thememory 407 may be coupled to the processor 401 only, or both processor401 and bus 403.

Controller 415 may be coupled to sensors 419 using any type of wired orwireless connection(s), and may receive data, such as measurement data,obtained by sensors 419. Sensors 419 may include any of the sensorsassociated with a wellbore environment, a drill string, and/or a bottomhole assembly as described herein. Measurement data may include any ofthe data associated with a geological formation and/or measurementsobtained during the drilling process of the geological formation.Measurement data may also include a measured current depth for the drillbit being used to perform the drilling process as measured by thesensors, and any measurement data obtained by the sensors over the pathof the wellbore being drilled by the drill bit as part of the drillingprocess. Controller 415 may include circuitry, such as analog-to-digital(A/D) converters and buffers that allow controller 415 to receiveelectrical signals directly from one or more of sensors 419, and/or dataprovided as an output from one or more of sensors 419.

A predetermined value for the distance D associated with the slidingwindow extending from the current drill bit position backward along thelongitudinal axis of the wellbore formed by the drilling process may bestored in any of the memory locations accessible by computing system400, such as memory 407. The predetermined value for distance D may beused to determine which of the measurement data obtained along the wellborehole are to be included in the measurements taken within the slidingwindow, an thus to be included in the calculations performed todetermine the model parameters and the estimates of the current drillbit inclination and azimuth as described above with respect to FIGS. 2A,3B, and 3. At least one value for distance D may be entered through aninput device (not shown in FIG. 4) such as a computer keyboard, that iscoupled to network interface 405, for example by a system user, andstored in any of the memory devices included in computing system 400 foruse in performing the methods and techniques described in thisdisclosure, and/or any equivalents thereof.

Steering controls 421 may also be coupled to controller 415. Any of theoutputs, including the estimates of the current drill bit inclinationand azimuth that may be generated in part or in whole using computingsystem 400 and/or as described herein may be provided as outputs tosteering controls 421. Controller 415 may include circuitry (notspecifically shown in FIG. 4) such as buffer and driver circuitry, thatallow controller 415 to provide electrical signals and/or data outputsignal to steering controls 421. Outputs provided to steering controls421 may include just the estimates of the current drill bit inclinationand azimuth that may be generated in part or in whole using computingsystem 400. In that example, steering controls 421 may include one ormore subsystems that are configured to generate additional steeringcontrol parameters based on the estimates of the current drill bitinclination and azimuth. These additional steering control parametersmay be provided as outputs to actuators (such as actuators 212, FIGS.2A, 2B) to control for example the inclination of the drill bit and thuscontrol the drilling process going forward.

In other examples, other portions of computing system 400 may furtherprocess the estimates of the current drill bit inclination and azimuthto generate additional steering control parameters based on theestimates of the current drill bit inclination and azimuth. Theseadditional steering control parameters may be communicated to steeringcontrols 421 and applied to actuators (such as actuators 212, FIGS. 2A,2B) through steering controls 421 in order to control for example theinclination of the drill bit going forward as the drilling processproceeds, and thus control for example a direction of the wellbore andthe drilling process going forward. The generation of the additionalsteering control parameters may be based on a modeling of the currentstate of the drilling process in view of a wellbore plan for how thepath of the wellbore should proceed going forward.

With respect to computing system 400, basic features here may easily besubstituted for improved hardware or firmware arrangements as they aredeveloped. In some examples, memory 407 includes non-volatile memory andcan be a hard disk or other types of computer readable media which canstore data that are accessible by a computer, such as magneticcassettes, flash memory cards, solid state memory devices, digitalversatile disks (DVDs), cartridges, RAM, ROM, a cable containing a bitstream, and hybrids thereof.

It will be understood that one or more blocks of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented byprogram code. The program code may be provided to a processor of ageneral-purpose computer, special purpose computer, or otherprogrammable machine or apparatus. As will be appreciated, aspects ofthe disclosure may be embodied as a system, method or programcode/instructions stored in one or more machine-readable media.Accordingly, aspects may take the form of hardware, software (includingfirmware, resident software, micro-code, etc.), or a combination ofsoftware and hardware aspects that may all generally be referred toherein as a “circuit,” “module” or “system.” The functionality presentedas individual modules/units in the example illustrations can beorganized differently in accordance with any one of platform (operatingsystem and/or hardware), application ecosystem, interfaces, programmerpreferences, programming language, administrator preferences, etc.

Computer program code for carrying out operations for aspects of thedisclosure may be written in any combination of one or more programminglanguages, including an object oriented programming language such as theJava® programming language, C++ or the like; a dynamic programminglanguage such as Python; a scripting language such as Perl programminglanguage or PowerShell script language; and conventional proceduralprogramming languages, such as the “C” programming language or similarprogramming languages. The program code may execute entirely on astand-alone machine, may execute in a distributed manner across multiplemachines, and may execute on one machine while providing results and oraccepting input on another machine. While depicted as a computing system400 or as a general purpose computer, some embodiments can be any typeof device or apparatus to perform operations described herein.

FIG. 5 illustrates a flowchart of an example method 500 according tovarious embodiments of the disclosure. Method 500 in some examples maybe performed in whole or in part by one or more processors, such asprocessors located in surface control unit 100 as illustrated anddescribed with respect to FIG. 1. In some examples method 500 may beperformed by one or more processors, such as processor 401 in FIG. 4,located in a bottom hole assembly, such as bottom hole assembly 25 asillustrated and describe with respect to FIG. 1, and/or bottom holeassembly 204 as illustrated and described with respect to FIGS. 2A and2B.

Referring to FIG. 5, method 500 includes generating measurement dataalong a wellbore during a drilling process (block 502). Measurement datamay include data obtained by one or more sensors located in the boreholewhere a drilling process is or has taken place. The number and types ofsensors used to obtain the measurement data is not limited to anyparticular number or types of sensor(s), and may include any type ofsensor data sensed by or derived from sensed measurements taken by thesensors during a drilling operation. Measurement data is not limited toany particular type of data, and may include multiplicity of measurementdata from different sensor packages, or data derived from this data. Themeasurement data may be collected at various intervals along the path ofthe borehole being drilled, and stored in a memory device, such asmemory 407 of computing system 400 as illustrated and described abovewith respect to FIG. 4.

Referring to FIG. 5, method 500 further includes determining a currentdepth for the drill bit that is being used to perform the drillingoperation of the wellbore (block 504). The determination of the currentdepth of the drill bit may be designated as “d*”. The determination ofthe current depth for the drill bit is not limited by any particularmethod or technique, and may include any method or technique that wouldbe understood by one of ordinary skill in the art. Drill bit depth insome examples may be tracked on the surface using the block height andcontinuously counting the number of drill pipes. The determined drillbit depth may be communicated to downhole devices and/or sensors with atelemetry system. The drill bit depth may also be estimated downhole onthe drilling tool using the available sensors and a rate of penetrationmodel. In some examples, the determination of the depth of the drill bitmay be based on the estimation of the current position of the face ofthe drill bit.

Using the determined current depth of the drill bit, method 500 proceedsto generate weighted measurement data for measurement data collectedover a sliding window (block 506). The sliding window is determined toinclude measurement data obtained during the drilling operation alongthe borehole starting from the current drill bit position (determinedcurrent depth of the drill bit) and extending backward along the alreadydrilled borehole for a distance D. As such, the sliding window isconfigured to include measurement data obtained along the alreadydrilled borehole and within the length of the sliding window thatextends from the d* current position of the drill bit backward adistance D along the longitudinal axis of the borehole. Taking themeasurement data that falls within the sliding window, method 500includes tuning the measurement data by weighting each of themeasurements included in the measurement data falling within the slidingwindow. Weighting of the measurement data may be based on the relativeposition of each of the data measurement relative to the currentposition of the drill bit, or based on the type and/or determinedaccuracy of the measurement data, or a combination of both the relativeposition and the type/accuracy of the measurement data.

The triggering of the collection and weighting of the measurement datais not limited to any particular time interval or triggering event. Insome examples, the measurement data falling within the sliding windowmay be collected and weighted each time a new set of measurementsbecomes available. In some example the measurement data falling withinthe sliding window may be collected and weighted at some predeterminedand iterative time interval, such as every second, or some fraction of asecond, or at a time interval that is more than one second. In someexamples, the trigger for the collection and weighting of themeasurement data may be based on the drill bit having progressed atriggering distance forward in the drilling process, and thus having thesliding window also moving along with the drill bit the same triggeringdistance, such as a minimum linear distance, since the last time themeasurement data was collected over the sliding window and weighted. Aswould be understood by one of ordinary skill in the art, variouscombinations of these triggering techniques may be used to determinewhen the collection and weighting of the measurement data will occur.

Method 500 includes generating model parameters based on the weightedmeasurement data (block 508). In some examples, the model parameters aregenerated using Equations 3 and 4 as described above. Once the modelparameters have been generated, method 500 includes applying the modelparameters and weighted measurement data to a predictive model togenerated estimates of the current drill bit inclination and azimuth(block 510). The model parameters and the predictive model may include aleast squares regression algorithm used to generate the estimate of thedrill bit inclination and azimuth. The predictive model may incorporatethe use some combination of Equations 5-8 as described above. Theapplication of the model parameters to the predictive model is used togenerate an estimated values for the current drill bit inclination andazimuth.

Method 500 may include the generation of steering controls based on theestimated values for the current drill bit inclination and azimuth(block 512). These steering controls may be provided to a steeringcontrols system that utilized the estimated values for the drill bitinclination and azimuth to control devices, such as actuator coupled tothe drill bit in order to control the drill bit operations based on theestimated values. The further drilling operations being controlled bythe steering controls is then monitored as feedback (arrow 520) togenerate new measurements data along the wellbore as the drillingprocess continues.

The flowcharts are provided to aid in understanding the illustrationsand are not to be used to limit scope of the claims. The flowchartsdepict example operations that can vary within the scope of the claims.Additional operations may be performed; fewer operations may beperformed; the operations may be performed in parallel; and theoperations may be performed in a different order. It will be understoodthat each block of the flowchart illustrations and/or block diagrams,and combinations of blocks in the flowchart illustrations and/or blockdiagrams, can be implemented by program code. The program code may beprovided to a processor of a general-purpose computer, special purposecomputer, or other programmable machine or apparatus.

As will be appreciated, aspects of the disclosure may be embodied as asystem, method or program code/instructions stored in one or moremachine-readable media. Accordingly, aspects may take the form ofhardware, software (including firmware, resident software, micro-code,etc.), or a combination of software and hardware aspects that may allgenerally be referred to herein as a “circuit,” “module” or “system.”The functionality presented as individual modules/units in the exampleillustrations can be organized differently in accordance with any one ofplatform (operating system and/or hardware), application ecosystem,interfaces, programmer preferences, programming language, administratorpreferences, etc.

Any combination of one or more machine readable medium(s) may beutilized. The machine-readable medium may be a machine-readable signalmedium or a machine-readable storage medium. A machine-readable storagemedium may be, for example, but not limited to, a system, apparatus, ordevice, that employs any one of or combination of electronic, magnetic,optical, electromagnetic, infrared, or semiconductor technology to storeprogram code. More specific examples (a non-exhaustive list) of themachine readable storage medium would include the following: a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), a portable compact disc read-only memory (CD-ROM), anoptical storage device, a magnetic storage device, or any suitablecombination of the foregoing. In the context of this document, amachine-readable storage medium may be any tangible medium that cancontain, or store a program for use by or in connection with aninstruction execution system, apparatus, or device. A machine-readablestorage medium is not a machine-readable signal medium.

A machine-readable signal medium may include a propagated data signalwith machine readable program code embodied therein, for example, inbaseband or as part of a carrier wave. Such a propagated signal may takeany of a variety of forms, including, but not limited to,electro-magnetic, optical, or any suitable combination thereof. Amachine-readable signal medium may be any machine-readable medium thatis not a machine-readable storage medium and that can communicate,propagate, or transport a program for use by or in connection with aninstruction execution system, apparatus, or device.

Program code embodied on a machine-readable medium may be transmittedusing any appropriate medium, including but not limited to wireless,wireline, optical fiber cable, RF, etc., or any suitable combination ofthe foregoing. Computer program code for carrying out operations foraspects of the disclosure may be written in any combination of one ormore programming languages, including an object oriented programminglanguage such as the Java® programming language, C++ or the like; adynamic programming language such as Python; a scripting language suchas Perl programming language or PowerShell script language; andconventional procedural programming languages, such as the “C”programming language or similar programming languages. The program codemay execute entirely on a stand-alone machine, may execute in adistributed manner across multiple machines, and may execute on onemachine while providing results and or accepting input on anothermachine. The program code/instructions may also be stored in amachine-readable medium that can direct a machine to function in aparticular manner, such that the instructions stored in themachine-readable medium produce an article of manufacture includinginstructions which implement the function/act specified in the flowchartand/or block diagram block or blocks.

While the aspects of the disclosure are described with reference tovarious implementations and exploitations, it will be understood thatthese aspects are illustrative and that the scope of the claims is notlimited to them. In general, techniques for estimating a drill bitinclination and azimuth as described herein may be implemented withfacilities consistent with any hardware system or systems. Manyvariations, modifications, additions, and improvements are possible.

Plural instances may be provided for components, operations orstructures described herein as a single instance. Finally, boundariesbetween various components, operations and data stores are somewhatarbitrary, and particular operations are illustrated in the context ofspecific illustrative configurations. Other allocations of functionalityare envisioned and may fall within the scope of the disclosure. Ingeneral, structures and functionality presented as separate componentsin the example configurations may be implemented as a combined structureor component. Similarly, structures and functionality presented as asingle component may be implemented as separate components. These andother variations, modifications, additions, and improvements may fallwithin the scope of the disclosure.

Use of the phrase “at least one of” preceding a list with theconjunction “and” should not be treated as an exclusive list and shouldnot be construed as a list of categories with one item from eachcategory, unless specifically stated otherwise. A clause that recites“at least one of A, B, and C” can be infringed with only one of thelisted items, multiple of the listed items, and one or more of the itemsin the list and another item not listed.

The following examples are provided.

Example 1: A method comprising: obtaining one or more measurementsassociated with a drill bit drilling a borehole, the one or moremeasurements measured within a sliding window extending along theborehole from a current depth position of the drill bit backward apredetermined distance D along a longitudinal axis of the borehole;weighting the one or more measurements obtained within the slidingwindow to generate one or more weighted measurements; estimating a setof model parameters based on the one or more weighted measurements; andapplying the estimated set of model parameters to a predictive model togenerate an estimate of a current inclination of the drill bit.

Example 2. The method of example 1, wherein the predictive modelgenerates the estimate of the current inclination of the drill bit usinga least squares regression algorithm.

Example 3. The method of examples 1 or 2, wherein the weighting of theone or more measurements comprises weighting each of the one or moremeasurements based on a relative position within the sliding windowwhere each of the one or more measurements was taken.

Example 4. The method of any of examples 1-3, wherein the one or moremeasurements taken at a position closest to the current depth positionof the drill bit are given a heavier weighting relative to the one ormore measurements taken at a one or more positions farther away from thecurrent depth position of the drill bit.

Example 5. The method of any of examples 1-4, wherein the weighting ofthe one or more measurements is based at least in part on an accuracy ofa sensor or a type of sensor making the one or more measurements.

Example 6. The method of any of examples 1-5, wherein data included inthe one or more measurements comprises survey data.

Example 7. The method of any of examples 1-6, wherein estimating the setof model parameters further comprises constraining a set of values ofthe set of model parameters to a physically realizable or a user-definedrange.

Example 8. The method of any of examples 1-7, wherein applying theestimated set of model parameters to the predictive model furthercomprises generating an estimated value for a current azimuth of thedrill bit.

Example 9. The method of any of examples 1-8, further comprising:outputting the estimate of the current inclination of the drill bit to asteering control system; and controlling one or more actuators using thesteering control system based at least in part on the estimate of thecurrent inclination of the drill bit.

Example 10. A system comprising: a drill string configured to drill aborehole in a geological formation, the drill string comprising a bottomhole assembly and a drill bit, the bottom hole assembly comprising oneor more actuators configured to control an inclination of the drill bit;and a device configured to: obtain one or more measurements associatedwith the drill bit, the one or more measurements measured within asliding window extending along the borehole from a current depthposition of the drill bit backward a predetermined distance D along alongitudinal axis of the borehole; weight the one or more measurementsobtained within the sliding window to generate one or more weightedmeasurements; estimate a set of model parameters based on the one ormore weighted measurements; and apply the estimated model parameters toa predictive model to generate an estimate of a current inclination ofthe drill bit.

Example 11. The system of example 10, wherein the device is configuredto output the estimate of the current inclination of the drill bit to asteering control system; and wherein the steering control system isconfigured to control the one or more actuators based at least in parton the estimate of the current inclination of the drill bit.

Example 12. The system of examples 10 or 11, wherein the device islocated within the bottom hole assembly.

Example 13. The system of any of examples 10-12, wherein the device isfurther configured to generate the estimate of the current inclinationof the drill bit using a least square regression algorithm.

Example 14. The system any of any of examples 10-13, wherein the deviceis further configured to weight each of the one or more measurementsbased on a relative position within the sliding window where themeasurement was taken, and wherein the one or more measurements taken ata position closest to the current depth position of the drill bit aregiven a heavier weighting relative to the one or more measurements takenat a one or more positions farther away from the current depth positionof the drill bit.

Example 15. The system of any of examples 10-14, wherein the device isfurther configured to weight the one or more measurements, estimate theset of model parameters, and apply the estimated model parameters to thepredictive model to generate the estimate of the current inclination ofthe drill bit each time of new set of the one or more measurements isobtained.

Example 16. The system of any of examples 10-15, wherein the device isfurther configured to weight the one or more measurements based at leastin part on an accuracy of a sensor or on a type of sensor making the oneor more measurements.

Example 17. The system of any of examples 10-16, wherein the device isfurther configured to generate an estimate of a current azimuth of thedrill bit using the predictive model.

Example 18. One or more non-transitory machine-readable storage mediumhaving program code executable by a processor to cause the processor to:obtain one or more measurements associated with a drill bit drilling aborehole, the one or more measurements measured within a sliding windowextending along the borehole from a current depth position of the drillbit backward a predetermined distance D along a longitudinal axis of theborehole; weight the one or more measurements obtained within thesliding window to generate one or more weighted measurements; estimate aset of model parameters based on the one or more weighted measurements;and apply the estimated model parameters to a predictive model togenerate an estimate of a current inclination of the drill bit.

Example 19. The one or more storage medium of example 18, wherein thepredictive model generates the estimate of the current inclination ofthe drill bit using a least squares regression algorithm.

Example 20. The one or more storage medium of examples 18 or 19, whereinthe weighting of the one or more measurements comprises weighting eachof the one or more measurements based on a relative position within thesliding window where each of the one or more measurements was taken.

What is claimed is:
 1. A method comprising: obtaining one or moremeasurements associated with a drill bit drilling a borehole, the one ormore measurements measured within a sliding window extending along theborehole from a current depth position of the drill bit backward apredetermined distance D along a longitudinal axis of the borehole;weighting the one or more measurements obtained within the slidingwindow to generate one or more weighted measurements; estimating a setof model parameters based on the one or more weighted measurements; andapplying the estimated set of model parameters to a predictive model togenerate an estimate of a current inclination of the drill bit.
 2. Themethod of claim 1, wherein the predictive model generates the estimateof the current inclination of the drill bit using a least squaresregression algorithm.
 3. The method of claim 1, wherein the weighting ofthe one or more measurements comprises weighting each of the one or moremeasurements based on a relative position within the sliding windowwhere each of the one or more measurements was taken.
 4. The method ofclaim 1, wherein the one or more measurements taken at a positionclosest to the current depth position of the drill bit are given aheavier weighting relative to the one or more measurements taken at aone or more positions farther away from the current depth position ofthe drill bit.
 5. The method of claim 1, wherein the weighting of theone or more measurements is based at least in part on an accuracy of asensor or a type of sensor making the one or more measurements.
 6. Themethod of claim 1, wherein data included in the one or more measurementscomprises survey data.
 7. The method of claim 1, wherein estimating theset of model parameters further comprises constraining a set of valuesof the set of model parameters to a physically realizable or auser-defined range.
 8. The method of claim 1, wherein applying theestimated set of model parameters to the predictive model furthercomprises generating an estimated value for a current azimuth of thedrill bit.
 9. The method of claim 1, further comprising: outputting theestimate of the current inclination of the drill bit to a steeringcontrol system; and controlling one or more actuators using the steeringcontrol system based at least in part on the estimate of the currentinclination of the drill bit.
 10. A system comprising: a drill stringconfigured to drill a borehole in a geological formation, the drillstring comprising a bottom hole assembly and a drill bit, the bottomhole assembly comprising one or more actuators configured to control aninclination of the drill bit; and a device configured to: obtain one ormore measurements associated with the drill bit, the one or moremeasurements measured within a sliding window extending along theborehole from a current depth position of the drill bit backward apredetermined distance D along a longitudinal axis of the borehole;weight the one or more measurements obtained within the sliding windowto generate one or more weighted measurements; estimate a set of modelparameters based on the one or more weighted measurements; and apply theestimated set of model parameters to a predictive model to generate anestimate of a current inclination of the drill bit.
 11. The system ofclaim 10, wherein the device is configured to output the estimate of thecurrent inclination of the drill bit to a steering control system; andwherein the steering control system is configured to control the one ormore actuators based at least in part on the estimate of the currentinclination of the drill bit.
 12. The system of claim 10, wherein thedevice is located within the bottom hole assembly.
 13. The system ofclaim 10, wherein the device is further configured to generate theestimate of the current inclination of the drill bit using a leastsquare regression algorithm.
 14. The system of claim 10, wherein thedevice is further configured to weight each of the one or moremeasurements based on a relative position within the sliding windowwhere the measurement was taken, and wherein the one or moremeasurements taken at a position closest to the current depth positionof the drill bit are given a heavier weighting relative to the one ormore measurements taken at a one or more positions farther away from thecurrent depth position of the drill bit.
 15. The system of claim 10,wherein the device is further configured to weight the one or moremeasurements, estimate the set of model parameters, and apply theestimated set of model parameters to the predictive model to generatethe estimate of the current inclination of the drill bit each time ofnew set of the one or more measurements is obtained.
 16. The system ofclaim 10, wherein the device is further configured to weight the one ormore measurements based at least in part on an accuracy of a sensor oron a type of sensor making the one or more measurements.
 17. The systemof claim 10, wherein the device is further configured to generate anestimate of a current azimuth of the drill bit using the predictivemodel.
 18. One or more non-transitory machine-readable storage mediumhaving program code executable by a processor to cause the processor to:obtain one or more measurements associated with a drill bit drilling aborehole, the one or more measurements measured within a sliding windowextending along the borehole from a current depth position of the drillbit backward a predetermined distance D along a longitudinal axis of theborehole; weight the one or more measurements obtained within thesliding window to generate one or more weighted measurements; estimate aset of model parameters based on the one or more weighted measurements;and apply the estimated set of model parameters to a predictive model togenerate an estimate of a current inclination of the drill bit.
 19. Theone or more storage medium of claim 18, wherein the predictive modelgenerates the estimate of the current inclination of the drill bit usinga least squares regression algorithm.
 20. The one or more storage mediumof claim 18, wherein the weighting of the one or more measurementscomprises weighting each of the one or more measurements based on arelative position within the sliding window where each of the one ormore measurements was taken.